這次來分析選舉造勢場合銷售烤香腸的數據,我們可以用 KNN 演算法來預測新活動當天烤香腸的銷售量。主要是根據過去的數據,預測新活動的銷售表現。
這個小專題也和昨天的小專題一樣,把機器學習演算法應用到商業預測中。我們可以根據不同活動的特徵(參與人數、天氣、時間),預測類似活動的銷售表現。
資料準備:烤香腸銷售數據
data
:使用字典存儲過去活動的數據,包含四個欄位:
'people'
:參與人數。'weather'
:天氣狀況(1:晴天, 0:下雨)。'time'
:舉辦時間(1:晚上, 0:早上)。'sales'
:烤香腸的銷售量。df
:將數據轉換成 Pandas 的 DataFrame,方便後續操作。KNN 演算法預測函數 knn_sales:
new_event
: 傳入的新活動參數(參與人數、天氣、時間)。k=3
: KNN 的 k 值設為 3,表示會選擇距離最近的三個活動。distances = []
: 初始化一個空列表,用來儲存新活動與過去每個活動的距離及銷售量。計算新活動和每個過去活動的距離:
for i in range(len(df))
:遍歷每一行數據(每個過去的活動)。event
:將每個活動的參與人數、天氣、時間轉換成 NumPy 陣列。找出最近的 k 個鄰居:
預測銷售量:
定義新活動並進行預測:
今天是我參賽的第 30 天啦~~真的真的很開心自己有堅持下去,也謝謝觀看我文章的讀者們!我知道我的文章都很漏漏ㄉㄥˊ,不過這是我記錄學習足跡的一種方式。也是因為這樣,我能夠好好整理思緒、把我學到的東西全都打出來,雖然打長文很累但學的蠻充實的>"<
現在 Python 對我來說,已經不會讓我感到害怕了。在這 30 天的學習過程中,真的學到了很多之前在做 AI 模型訓練時有看到的函數,還有做一些類似機器訓練的小專題,讓我覺得真的有奠定一定的基礎了。其實我是帶著感激的心情來寫每一篇文章的,儘管成果不盡完美,但能參加這樣的比賽來促進我學習,真的非常非常幸運😋
最後,再次感謝自己這 30 天的努力、感謝讀者們、感謝鐵人賽。